<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>MTB CAT1 Peripheral driver library: Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen_style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><a href="http://www.cypress.com/"><img alt="Logo" src="IFXCYP_one-line.png"/></a></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">MTB CAT1 Peripheral driver library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__group__i2s__functions.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#groups">API Reference</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Functions<div class="ingroups"><a class="el" href="group__group__i2s.html">I2S          (Inter-IC Sound)</a></div></div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">General Description</h2>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
API Reference</h2></td></tr>
<tr class="memitem:group__group__i2s__functions__syspm__callback"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions__syspm__callback.html">Low Power Callback</a></td></tr>
<tr class="memdesc:group__group__i2s__functions__syspm__callback"><td class="mdescLeft">&#160;</td><td class="mdescRight">The driver supports SysPm callback for Deep Sleep transition. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga7574dd2c887d3a97a9e4ffae4c586cf6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__group__i2s__enums.html#ga49f7fb887e336a0b459c022cd99f4fa3">cy_en_i2s_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga7574dd2c887d3a97a9e4ffae4c586cf6">Cy_I2S_Init</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base, <a class="el" href="structcy__stc__i2s__config__t.html">cy_stc_i2s_config_t</a> const *config)</td></tr>
<tr class="memdesc:ga7574dd2c887d3a97a9e4ffae4c586cf6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the I2S module in accordance with a configuration structure.  <a href="#ga7574dd2c887d3a97a9e4ffae4c586cf6">More...</a><br /></td></tr>
<tr class="separator:ga7574dd2c887d3a97a9e4ffae4c586cf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeeb306d03c6c13ede281a5d498392361"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gaeeb306d03c6c13ede281a5d498392361">Cy_I2S_DeInit</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:gaeeb306d03c6c13ede281a5d498392361"><td class="mdescLeft">&#160;</td><td class="mdescRight">Uninitializes the I2S module (reverts default register values).  <a href="#gaeeb306d03c6c13ede281a5d498392361">More...</a><br /></td></tr>
<tr class="separator:gaeeb306d03c6c13ede281a5d498392361"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7d690f4d128200b3c027fd07d8bcf972"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga7d690f4d128200b3c027fd07d8bcf972">Cy_I2S_EnableTx</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:ga7d690f4d128200b3c027fd07d8bcf972"><td class="mdescLeft">&#160;</td><td class="mdescRight">Starts an I2S transmission.  <a href="#ga7d690f4d128200b3c027fd07d8bcf972">More...</a><br /></td></tr>
<tr class="separator:ga7d690f4d128200b3c027fd07d8bcf972"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga54b27dbc0b80e39a33392eeafaa768d0"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga54b27dbc0b80e39a33392eeafaa768d0">Cy_I2S_PauseTx</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:ga54b27dbc0b80e39a33392eeafaa768d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pauses an I2S transmission.  <a href="#ga54b27dbc0b80e39a33392eeafaa768d0">More...</a><br /></td></tr>
<tr class="separator:ga54b27dbc0b80e39a33392eeafaa768d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae8ed575f9bdb8c959bef47e9598d943e"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gae8ed575f9bdb8c959bef47e9598d943e">Cy_I2S_ResumeTx</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:gae8ed575f9bdb8c959bef47e9598d943e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resumes an I2S transmission.  <a href="#gae8ed575f9bdb8c959bef47e9598d943e">More...</a><br /></td></tr>
<tr class="separator:gae8ed575f9bdb8c959bef47e9598d943e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga732b71093031a588f2a06d65721e5833"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga732b71093031a588f2a06d65721e5833">Cy_I2S_DisableTx</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:ga732b71093031a588f2a06d65721e5833"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stops an I2S transmission.  <a href="#ga732b71093031a588f2a06d65721e5833">More...</a><br /></td></tr>
<tr class="separator:ga732b71093031a588f2a06d65721e5833"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaedf461d1a75f8b244701a4703d1fe539"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gaedf461d1a75f8b244701a4703d1fe539">Cy_I2S_EnableRx</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:gaedf461d1a75f8b244701a4703d1fe539"><td class="mdescLeft">&#160;</td><td class="mdescRight">Starts an I2S reception.  <a href="#gaedf461d1a75f8b244701a4703d1fe539">More...</a><br /></td></tr>
<tr class="separator:gaedf461d1a75f8b244701a4703d1fe539"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaa9e5c239a1431e0325b2952b6e0b4b0"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gaaa9e5c239a1431e0325b2952b6e0b4b0">Cy_I2S_DisableRx</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:gaaa9e5c239a1431e0325b2952b6e0b4b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stops an I2S reception.  <a href="#gaaa9e5c239a1431e0325b2952b6e0b4b0">More...</a><br /></td></tr>
<tr class="separator:gaaa9e5c239a1431e0325b2952b6e0b4b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0819d156c320adef879b90c20acebb0b"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga0819d156c320adef879b90c20acebb0b">Cy_I2S_GetCurrentState</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:ga0819d156c320adef879b90c20acebb0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current I2S state (TX/RX running/paused/stopped).  <a href="#ga0819d156c320adef879b90c20acebb0b">More...</a><br /></td></tr>
<tr class="separator:ga0819d156c320adef879b90c20acebb0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8dda7998e6adb06e24d5b32433eaff7b"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga8dda7998e6adb06e24d5b32433eaff7b">Cy_I2S_ClearTxFifo</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:ga8dda7998e6adb06e24d5b32433eaff7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears the TX FIFO (resets the Read/Write FIFO pointers).  <a href="#ga8dda7998e6adb06e24d5b32433eaff7b">More...</a><br /></td></tr>
<tr class="separator:ga8dda7998e6adb06e24d5b32433eaff7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac28b9de6ed8c42acd42b38c7b6508444"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gac28b9de6ed8c42acd42b38c7b6508444">Cy_I2S_GetNumInTxFifo</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:gac28b9de6ed8c42acd42b38c7b6508444"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of used words in the TX FIFO.  <a href="#gac28b9de6ed8c42acd42b38c7b6508444">More...</a><br /></td></tr>
<tr class="separator:gac28b9de6ed8c42acd42b38c7b6508444"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7512a08a18a989cd46809ce75aa2dfa6"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga7512a08a18a989cd46809ce75aa2dfa6">Cy_I2S_WriteTxData</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base, uint32_t data)</td></tr>
<tr class="memdesc:ga7512a08a18a989cd46809ce75aa2dfa6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes data to the TX FIFO.  <a href="#ga7512a08a18a989cd46809ce75aa2dfa6">More...</a><br /></td></tr>
<tr class="separator:ga7512a08a18a989cd46809ce75aa2dfa6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga75276f8ea34dce51676aecf1dd200b13"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga75276f8ea34dce51676aecf1dd200b13">Cy_I2S_GetTxReadPointer</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:ga75276f8ea34dce51676aecf1dd200b13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the TX FIFO Read pointer.  <a href="#ga75276f8ea34dce51676aecf1dd200b13">More...</a><br /></td></tr>
<tr class="separator:ga75276f8ea34dce51676aecf1dd200b13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacd5d46f9df21a86f414716b5bb1c4571"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gacd5d46f9df21a86f414716b5bb1c4571">Cy_I2S_GetTxWritePointer</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:gacd5d46f9df21a86f414716b5bb1c4571"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the TX FIFO Write pointer.  <a href="#gacd5d46f9df21a86f414716b5bb1c4571">More...</a><br /></td></tr>
<tr class="separator:gacd5d46f9df21a86f414716b5bb1c4571"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa4f7d70dc4aa9716864e12f8fc8d5791"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gaa4f7d70dc4aa9716864e12f8fc8d5791">Cy_I2S_FreezeTxFifo</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:gaa4f7d70dc4aa9716864e12f8fc8d5791"><td class="mdescLeft">&#160;</td><td class="mdescRight">Freezes the TX FIFO.  <a href="#gaa4f7d70dc4aa9716864e12f8fc8d5791">More...</a><br /></td></tr>
<tr class="separator:gaa4f7d70dc4aa9716864e12f8fc8d5791"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4ed92a2c26187bfa03b01d72ab8d06e6"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga4ed92a2c26187bfa03b01d72ab8d06e6">Cy_I2S_UnfreezeTxFifo</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:ga4ed92a2c26187bfa03b01d72ab8d06e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unfreezes the TX FIFO.  <a href="#ga4ed92a2c26187bfa03b01d72ab8d06e6">More...</a><br /></td></tr>
<tr class="separator:ga4ed92a2c26187bfa03b01d72ab8d06e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga11c903a4a6fb573bf85e83082f898352"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga11c903a4a6fb573bf85e83082f898352">Cy_I2S_ClearRxFifo</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:ga11c903a4a6fb573bf85e83082f898352"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears the RX FIFO (resets the Read/Write FIFO pointers).  <a href="#ga11c903a4a6fb573bf85e83082f898352">More...</a><br /></td></tr>
<tr class="separator:ga11c903a4a6fb573bf85e83082f898352"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf8a9faca8ed9e59246b68551a6435b86"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gaf8a9faca8ed9e59246b68551a6435b86">Cy_I2S_GetNumInRxFifo</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:gaf8a9faca8ed9e59246b68551a6435b86"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of used words in the RX FIFO.  <a href="#gaf8a9faca8ed9e59246b68551a6435b86">More...</a><br /></td></tr>
<tr class="separator:gaf8a9faca8ed9e59246b68551a6435b86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad7357e57531ff7c567528b085229b31d"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gad7357e57531ff7c567528b085229b31d">Cy_I2S_ReadRxData</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:gad7357e57531ff7c567528b085229b31d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads data from the RX FIFO.  <a href="#gad7357e57531ff7c567528b085229b31d">More...</a><br /></td></tr>
<tr class="separator:gad7357e57531ff7c567528b085229b31d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga90cd78ba3a198a9ab614bd6a4067795b"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga90cd78ba3a198a9ab614bd6a4067795b">Cy_I2S_ReadRxDataSilent</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:ga90cd78ba3a198a9ab614bd6a4067795b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads data from the RX FIFO without updating the RX FIFO read pointer.  <a href="#ga90cd78ba3a198a9ab614bd6a4067795b">More...</a><br /></td></tr>
<tr class="separator:ga90cd78ba3a198a9ab614bd6a4067795b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafb8ef85cc35a11359a130da71bc28e5e"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gafb8ef85cc35a11359a130da71bc28e5e">Cy_I2S_GetRxReadPointer</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:gafb8ef85cc35a11359a130da71bc28e5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the RX FIFO Read pointer.  <a href="#gafb8ef85cc35a11359a130da71bc28e5e">More...</a><br /></td></tr>
<tr class="separator:gafb8ef85cc35a11359a130da71bc28e5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4c941c1ab476ccc431227e42a3204b6a"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga4c941c1ab476ccc431227e42a3204b6a">Cy_I2S_GetRxWritePointer</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:ga4c941c1ab476ccc431227e42a3204b6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the RX FIFO Write pointer.  <a href="#ga4c941c1ab476ccc431227e42a3204b6a">More...</a><br /></td></tr>
<tr class="separator:ga4c941c1ab476ccc431227e42a3204b6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3de8271260cf4da4ec8f61b8a7895a9a"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga3de8271260cf4da4ec8f61b8a7895a9a">Cy_I2S_FreezeRxFifo</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:ga3de8271260cf4da4ec8f61b8a7895a9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Freezes the RX FIFO.  <a href="#ga3de8271260cf4da4ec8f61b8a7895a9a">More...</a><br /></td></tr>
<tr class="separator:ga3de8271260cf4da4ec8f61b8a7895a9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga91e5c2ab78e35e09d576f9adbcb0db40"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga91e5c2ab78e35e09d576f9adbcb0db40">Cy_I2S_UnfreezeRxFifo</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base)</td></tr>
<tr class="memdesc:ga91e5c2ab78e35e09d576f9adbcb0db40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unfreezes the RX FIFO.  <a href="#ga91e5c2ab78e35e09d576f9adbcb0db40">More...</a><br /></td></tr>
<tr class="separator:ga91e5c2ab78e35e09d576f9adbcb0db40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga69a9766065aa59819f46d1c3f1e78631"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga69a9766065aa59819f46d1c3f1e78631">Cy_I2S_GetInterruptStatus</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:ga69a9766065aa59819f46d1c3f1e78631"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets an interrupt status (returns a content of the INTR register).  <a href="#ga69a9766065aa59819f46d1c3f1e78631">More...</a><br /></td></tr>
<tr class="separator:ga69a9766065aa59819f46d1c3f1e78631"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7f7dde04f9940070daef8999eab4b5ac"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga7f7dde04f9940070daef8999eab4b5ac">Cy_I2S_ClearInterrupt</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base, uint32_t interrupt)</td></tr>
<tr class="memdesc:ga7f7dde04f9940070daef8999eab4b5ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears one or more interrupt factors (sets the INTR register).  <a href="#ga7f7dde04f9940070daef8999eab4b5ac">More...</a><br /></td></tr>
<tr class="separator:ga7f7dde04f9940070daef8999eab4b5ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga361c7897d02c94d4a45063f57e9117ea"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga361c7897d02c94d4a45063f57e9117ea">Cy_I2S_SetInterrupt</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base, uint32_t interrupt)</td></tr>
<tr class="memdesc:ga361c7897d02c94d4a45063f57e9117ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets one or more interrupt factors (sets the INTR_SET register).  <a href="#ga361c7897d02c94d4a45063f57e9117ea">More...</a><br /></td></tr>
<tr class="separator:ga361c7897d02c94d4a45063f57e9117ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4322105dd958d9d42f7ead1399e0ab51"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga4322105dd958d9d42f7ead1399e0ab51">Cy_I2S_GetInterruptMask</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:ga4322105dd958d9d42f7ead1399e0ab51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the interrupt mask (a content of the INTR_MASK register).  <a href="#ga4322105dd958d9d42f7ead1399e0ab51">More...</a><br /></td></tr>
<tr class="separator:ga4322105dd958d9d42f7ead1399e0ab51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3add2008780c377c10dd3231d97182de"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#ga3add2008780c377c10dd3231d97182de">Cy_I2S_SetInterruptMask</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> *base, uint32_t interrupt)</td></tr>
<tr class="memdesc:ga3add2008780c377c10dd3231d97182de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets one or more interrupt factor masks (the INTR_MASK register).  <a href="#ga3add2008780c377c10dd3231d97182de">More...</a><br /></td></tr>
<tr class="separator:ga3add2008780c377c10dd3231d97182de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaefc4f987f55f52a80a0d8fbd811b3c33"><td class="memItemLeft" align="right" valign="top">__STATIC_INLINE uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__i2s__functions.html#gaefc4f987f55f52a80a0d8fbd811b3c33">Cy_I2S_GetInterruptStatusMasked</a> (<a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *base)</td></tr>
<tr class="memdesc:gaefc4f987f55f52a80a0d8fbd811b3c33"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the interrupt status masked (a content of the INTR_MASKED register).  <a href="#gaefc4f987f55f52a80a0d8fbd811b3c33">More...</a><br /></td></tr>
<tr class="separator:gaefc4f987f55f52a80a0d8fbd811b3c33"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga7574dd2c887d3a97a9e4ffae4c586cf6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7574dd2c887d3a97a9e4ffae4c586cf6">&#9670;&nbsp;</a></span>Cy_I2S_Init()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__group__i2s__enums.html#ga49f7fb887e336a0b459c022cd99f4fa3">cy_en_i2s_status_t</a> Cy_I2S_Init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structcy__stc__i2s__config__t.html">cy_stc_i2s_config_t</a> const *&#160;</td>
          <td class="paramname"><em>config</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes the I2S module in accordance with a configuration structure. </p>
<dl class="section pre"><dt>Precondition</dt><dd>If the I2S module is initialized previously, the <a class="el" href="group__group__i2s__functions.html#gaeeb306d03c6c13ede281a5d498392361">Cy_I2S_DeInit()</a> must be called before calling this function.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
    <tr><td class="paramname">config</td><td>The pointer to a configuration structure.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>error / status code. See <a class="el" href="group__group__i2s__enums.html#ga49f7fb887e336a0b459c022cd99f4fa3">cy_en_i2s_status_t</a>.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Setup a duplex 16-bit I2S interface */</span></div><div class="line">    </div><div class="line">    <span class="keyword">const</span> <a class="code" href="structcy__stc__i2s__config__t.html">cy_stc_i2s_config_t</a> config =</div><div class="line">    {</div><div class="line">        <span class="comment">/* .txEnabled          */</span> <span class="keyword">true</span>,</div><div class="line">        <span class="comment">/* .rxEnabled          */</span> <span class="keyword">true</span>,</div><div class="line">        <span class="comment">/* .txDmaTrigger       */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .rxDmaTrigger       */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .clkDiv             */</span> 16U,</div><div class="line">        <span class="comment">/* .extClk             */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .txMasterMode       */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .txAlignment        */</span> <a class="code" href="group__group__i2s__enums.html#ggac2ba15c8dab8fc0c422ab369992636f5ae42d0ade64f2daf741c905db1034188b">CY_I2S_I2S_MODE</a>,</div><div class="line">        <span class="comment">/* .txWsPulseWidth     */</span> <a class="code" href="group__group__i2s__enums.html#gga265f4e0f0d40f96b383a91aab3215f79a4ac9c0b6c81f4ceb4fa17f83ff96e912">CY_I2S_WS_ONE_CHANNEL_LENGTH</a>,</div><div class="line">        <span class="comment">/* .txWatchdogEnable   */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .txWatchdogValue    */</span> 0xFFFFFFFFUL,</div><div class="line">        <span class="comment">/* .txSdoLatchingTime  */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .txSckoInversion    */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .txSckiInversion    */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .txChannels         */</span> 2U,</div><div class="line">        <span class="comment">/* .txChannelLength    */</span> <a class="code" href="group__group__i2s__enums.html#gga23a77f23cf018c0a0ca3874a0709a630a4b0d03407d5b1d135784e77570613ae5">CY_I2S_LEN16</a>,</div><div class="line">        <span class="comment">/* .txWordLength       */</span> <a class="code" href="group__group__i2s__enums.html#gga23a77f23cf018c0a0ca3874a0709a630a4b0d03407d5b1d135784e77570613ae5">CY_I2S_LEN16</a>,</div><div class="line">        <span class="comment">/* .txOverheadValue    */</span> <a class="code" href="group__group__i2s__enums.html#ggace34f02636657f8a8f1290fcbc5acfa6ab0df85606cde8ff2d5b0c58dd3f7193c">CY_I2S_OVHDATA_ZERO</a>,</div><div class="line">        <span class="comment">/* .txFifoTriggerLevel */</span> 0U, <span class="comment">/* In this example the trigger isn&#39;t used */</span></div><div class="line">        <span class="comment">/* .rxMasterMode       */</span> <span class="keyword">true</span>,</div><div class="line">        <span class="comment">/* .rxAlignment        */</span> <a class="code" href="group__group__i2s__enums.html#ggac2ba15c8dab8fc0c422ab369992636f5ae42d0ade64f2daf741c905db1034188b">CY_I2S_I2S_MODE</a>,</div><div class="line">        <span class="comment">/* .rxWsPulseWidth     */</span> <a class="code" href="group__group__i2s__enums.html#gga265f4e0f0d40f96b383a91aab3215f79a4ac9c0b6c81f4ceb4fa17f83ff96e912">CY_I2S_WS_ONE_CHANNEL_LENGTH</a>,</div><div class="line">        <span class="comment">/* .rxWatchdogEnable   */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .rxWatchdogValue    */</span> 0xFFFFFFFFUL,</div><div class="line">        <span class="comment">/* .rxSdiLatchingTime  */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .rxSckoInversion    */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .rxSckiInversion    */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .rxChannels         */</span> 2U,</div><div class="line">        <span class="comment">/* .rxChannelLength    */</span> <a class="code" href="group__group__i2s__enums.html#gga23a77f23cf018c0a0ca3874a0709a630a4b0d03407d5b1d135784e77570613ae5">CY_I2S_LEN16</a>,</div><div class="line">        <span class="comment">/* .rxWordLength       */</span> <a class="code" href="group__group__i2s__enums.html#gga23a77f23cf018c0a0ca3874a0709a630a4b0d03407d5b1d135784e77570613ae5">CY_I2S_LEN16</a>,</div><div class="line">        <span class="comment">/* .rxSignExtension    */</span> <span class="keyword">false</span>,</div><div class="line">        <span class="comment">/* .rxFifoTriggerLevel */</span> 0U <span class="comment">/* In this example the trigger isn&#39;t used */</span></div><div class="line">    };</div><div class="line">    </div><div class="line">    <span class="keywordflow">if</span>(<a class="code" href="group__group__i2s__enums.html#gga49f7fb887e336a0b459c022cd99f4fa3a2f64d83f74b115135886e89ca315a98b">CY_I2S_SUCCESS</a> != <a class="code" href="group__group__i2s__functions.html#ga7574dd2c887d3a97a9e4ffae4c586cf6">Cy_I2S_Init</a> (I2S0, &amp;config))</div><div class="line">    {</div><div class="line">        <span class="comment">/* Insert error handling */</span></div><div class="line">    }</div><div class="line">    </div><div class="line">    <span class="comment">/* Clear both FIFOs */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga11c903a4a6fb573bf85e83082f898352">Cy_I2S_ClearRxFifo</a> (I2S0);</div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga8dda7998e6adb06e24d5b32433eaff7b">Cy_I2S_ClearTxFifo</a> (I2S0);</div><div class="line">    <span class="comment">/* Put at least one frame (may be empty) into the Tx FIFO - two data words for I2S format */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga7512a08a18a989cd46809ce75aa2dfa6">Cy_I2S_WriteTxData</a> (I2S0, 0UL);</div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga7512a08a18a989cd46809ce75aa2dfa6">Cy_I2S_WriteTxData</a> (I2S0, 0UL);</div><div class="line">    <span class="comment">/* Clear possible pending interrupts */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga7f7dde04f9940070daef8999eab4b5ac">Cy_I2S_ClearInterrupt</a> (I2S0, <a class="code" href="group__group__i2s__macros__interrupt__masks.html#gadc2be4eeee3e8b5a0d54bd6e881f5218">CY_I2S_INTR_TX_EMPTY</a>);</div><div class="line">    <span class="comment">/* Enable interrupts */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga3add2008780c377c10dd3231d97182de">Cy_I2S_SetInterruptMask</a> (I2S0, <a class="code" href="group__group__i2s__macros__interrupt__masks.html#gadc2be4eeee3e8b5a0d54bd6e881f5218">CY_I2S_INTR_TX_EMPTY</a> | <a class="code" href="group__group__i2s__macros__interrupt__masks.html#gaa3ab58981323c1646276eb0e53fc0e3f">CY_I2S_INTR_RX_FULL</a>);</div><div class="line">    <span class="comment">/* Enable communication */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#gaedf461d1a75f8b244701a4703d1fe539">Cy_I2S_EnableRx</a> (I2S0);</div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga7d690f4d128200b3c027fd07d8bcf972">Cy_I2S_EnableTx</a> (I2S0);</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gaeeb306d03c6c13ede281a5d498392361"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaeeb306d03c6c13ede281a5d498392361">&#9670;&nbsp;</a></span>Cy_I2S_DeInit()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Cy_I2S_DeInit </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Uninitializes the I2S module (reverts default register values). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: The I2S block is initialized/working and then no longer used or needs to be reset */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#gaeeb306d03c6c13ede281a5d498392361">Cy_I2S_DeInit</a> (I2S0);</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga7d690f4d128200b3c027fd07d8bcf972"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7d690f4d128200b3c027fd07d8bcf972">&#9670;&nbsp;</a></span>Cy_I2S_EnableTx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_EnableTx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Starts an I2S transmission. </p>
<p>Interrupt enabling (by the <a class="el" href="group__group__i2s__functions.html#ga3add2008780c377c10dd3231d97182de">Cy_I2S_SetInterruptMask</a>) is required after this function call, in case if any I2S interrupts are used in the application.</p>
<dl class="section pre"><dt>Precondition</dt><dd><a class="el" href="group__group__i2s__functions.html#ga7574dd2c887d3a97a9e4ffae4c586cf6" title="Initializes the I2S module in accordance with a configuration structure. ">Cy_I2S_Init()</a> must be called before.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: the I2S block is initialized to operate in TX mode </span></div><div class="line"><span class="comment">       and its interrupt mask has been configured (if used). </span></div><div class="line"><span class="comment">       The TX FIFOs are prepared and the block is ready to be enabled for TX communication.*/</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga7d690f4d128200b3c027fd07d8bcf972">Cy_I2S_EnableTx</a> (I2S0);</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga54b27dbc0b80e39a33392eeafaa768d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga54b27dbc0b80e39a33392eeafaa768d0">&#9670;&nbsp;</a></span>Cy_I2S_PauseTx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_PauseTx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pauses an I2S transmission. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: The I2S transmission is running and there is a need be paused */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga54b27dbc0b80e39a33392eeafaa768d0">Cy_I2S_PauseTx</a> (I2S0);</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gae8ed575f9bdb8c959bef47e9598d943e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae8ed575f9bdb8c959bef47e9598d943e">&#9670;&nbsp;</a></span>Cy_I2S_ResumeTx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_ResumeTx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Resumes an I2S transmission. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: The I2S transmission is paused and there is a need be resumed */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#gae8ed575f9bdb8c959bef47e9598d943e">Cy_I2S_ResumeTx</a> (I2S0);    </div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga732b71093031a588f2a06d65721e5833"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga732b71093031a588f2a06d65721e5833">&#9670;&nbsp;</a></span>Cy_I2S_DisableTx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_DisableTx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stops an I2S transmission. </p>
<dl class="section pre"><dt>Precondition</dt><dd>TX interrupt disabling (by the <a class="el" href="group__group__i2s__functions.html#ga3add2008780c377c10dd3231d97182de">Cy_I2S_SetInterruptMask</a>) is required prior to this function call, in case any TX I2S interrupts are used.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: The I2S transmission is running and no longer required</span></div><div class="line"><span class="comment">       so needs to be turned off. */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga732b71093031a588f2a06d65721e5833">Cy_I2S_DisableTx</a> (I2S0);</div><div class="line">    <span class="comment">/* Disable all the TX interrupts here */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gaedf461d1a75f8b244701a4703d1fe539"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaedf461d1a75f8b244701a4703d1fe539">&#9670;&nbsp;</a></span>Cy_I2S_EnableRx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_EnableRx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Starts an I2S reception. </p>
<p>Interrupt enabling (by the <a class="el" href="group__group__i2s__functions.html#ga3add2008780c377c10dd3231d97182de">Cy_I2S_SetInterruptMask</a>) is required after this function call, in case any I2S interrupts are used in the application.</p>
<dl class="section pre"><dt>Precondition</dt><dd><a class="el" href="group__group__i2s__functions.html#ga7574dd2c887d3a97a9e4ffae4c586cf6">Cy_I2S_Init()</a> must be called before.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: The I2S block is initialized to operate in RX mode </span></div><div class="line"><span class="comment">       and its interrupt mask has been configured (if used).</span></div><div class="line"><span class="comment">       The RX FIFO is cleared and ready for data reception. */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#gaedf461d1a75f8b244701a4703d1fe539">Cy_I2S_EnableRx</a> (I2S0);</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gaaa9e5c239a1431e0325b2952b6e0b4b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaaa9e5c239a1431e0325b2952b6e0b4b0">&#9670;&nbsp;</a></span>Cy_I2S_DisableRx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_DisableRx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stops an I2S reception. </p>
<dl class="section pre"><dt>Precondition</dt><dd>RX interrupt disabling (by the <a class="el" href="group__group__i2s__functions.html#ga3add2008780c377c10dd3231d97182de">Cy_I2S_SetInterruptMask</a>) is required prior to this function call, in case any RX I2S interrupts are used.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: The I2S reception is running and no longer required</span></div><div class="line"><span class="comment">       so needs to be turned off. */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#gaaa9e5c239a1431e0325b2952b6e0b4b0">Cy_I2S_DisableRx</a> (I2S0);</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga0819d156c320adef879b90c20acebb0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0819d156c320adef879b90c20acebb0b">&#9670;&nbsp;</a></span>Cy_I2S_GetCurrentState()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint32_t Cy_I2S_GetCurrentState </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the current I2S state (TX/RX running/paused/stopped). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The current state <a class="el" href="group__group__i2s__macros__current__state.html">Current State</a>.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to check whether the I2S transmission is running */</span></div><div class="line">    uint32_t state = <a class="code" href="group__group__i2s__functions.html#ga0819d156c320adef879b90c20acebb0b">Cy_I2S_GetCurrentState</a>(I2S0);</div><div class="line">    <span class="keywordflow">if</span> ((0UL != (<a class="code" href="group__group__i2s__macros__current__state.html#ga55b5d1de983482f8611ece33abfff7e1">CY_I2S_TX_START</a> &amp; state)) &amp;&amp;</div><div class="line">        (0UL == (<a class="code" href="group__group__i2s__macros__current__state.html#gab3323a2bbcda2a0811513694f4b29e83">CY_I2S_TX_PAUSE</a> &amp; state)))</div><div class="line">    {</div><div class="line">        <span class="comment">/* The I2S transmission is running (enabled and not paused) */</span></div><div class="line">    }</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga8dda7998e6adb06e24d5b32433eaff7b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8dda7998e6adb06e24d5b32433eaff7b">&#9670;&nbsp;</a></span>Cy_I2S_ClearTxFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_ClearTxFifo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Clears the TX FIFO (resets the Read/Write FIFO pointers). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Empty the contents of the TX FIFO in preparation for a new set of TX data */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga8dda7998e6adb06e24d5b32433eaff7b">Cy_I2S_ClearTxFifo</a>(I2S0);</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gac28b9de6ed8c42acd42b38c7b6508444"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac28b9de6ed8c42acd42b38c7b6508444">&#9670;&nbsp;</a></span>Cy_I2S_GetNumInTxFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint32_t Cy_I2S_GetNumInTxFifo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the number of used words in the TX FIFO. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The current number of used words in the TX FIFO.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: New data set needs to be loaded into the TX buffer.</span></div><div class="line"><span class="comment">       However first check the number of data words currently in the TX FIFO. */</span></div><div class="line">    <span class="keywordflow">if</span> (254UL &gt; <a class="code" href="group__group__i2s__functions.html#gac28b9de6ed8c42acd42b38c7b6508444">Cy_I2S_GetNumInTxFifo</a>(I2S0))</div><div class="line">    {</div><div class="line">        <span class="comment">/* There are more than 2 empty words in the TX FIFO, </span></div><div class="line"><span class="comment">           so load the next I2S frame using Cy_I2S_WriteTxData */</span></div><div class="line">    }</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga7512a08a18a989cd46809ce75aa2dfa6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7512a08a18a989cd46809ce75aa2dfa6">&#9670;&nbsp;</a></span>Cy_I2S_WriteTxData()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_WriteTxData </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes data to the TX FIFO. </p>
<p>Increases the TX FIFO level.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
    <tr><td class="paramname">data</td><td>Data to be written to the TX FIFO.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga7512a08a18a989cd46809ce75aa2dfa6">Cy_I2S_WriteTxData</a>(I2S0, 1UL); <span class="comment">/* The last word in the Tx FIFO is 0x00000001. */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga7512a08a18a989cd46809ce75aa2dfa6">Cy_I2S_WriteTxData</a>(I2S0, 2UL); <span class="comment">/* Now the last word in the Tx FIFO is 0x00000002,</span></div><div class="line"><span class="comment">                                     and previous is 0x00000001. */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga75276f8ea34dce51676aecf1dd200b13"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga75276f8ea34dce51676aecf1dd200b13">&#9670;&nbsp;</a></span>Cy_I2S_GetTxReadPointer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint8_t Cy_I2S_GetTxReadPointer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the TX FIFO Read pointer. </p>
<p>This function is for debug purposes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The current TX Read pointer value.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to check the Tx FIFO read pointer */</span></div><div class="line">    uint8_t readPointer = <a class="code" href="group__group__i2s__functions.html#ga75276f8ea34dce51676aecf1dd200b13">Cy_I2S_GetTxReadPointer</a>(I2S0);</div><div class="line">    <span class="comment">/* readPointer now contains the read pointer of the Tx FIFO.</span></div><div class="line"><span class="comment">       The Tx FIFO read pointer increments when transmission is enabled and </span></div><div class="line"><span class="comment">       HW takes a data word from FIFO into the transmitter */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gacd5d46f9df21a86f414716b5bb1c4571"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacd5d46f9df21a86f414716b5bb1c4571">&#9670;&nbsp;</a></span>Cy_I2S_GetTxWritePointer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint8_t Cy_I2S_GetTxWritePointer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the TX FIFO Write pointer. </p>
<p>This function is for debug purposes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The current TX Write pointer value.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to check the Tx FIFO write pointer */</span></div><div class="line">    uint8_t writePointer = <a class="code" href="group__group__i2s__functions.html#gacd5d46f9df21a86f414716b5bb1c4571">Cy_I2S_GetTxWritePointer</a>(I2S0);</div><div class="line">    <span class="comment">/* writePointer now contains the write pointer of the Tx FIFO.</span></div><div class="line"><span class="comment">       The Tx FIFO write pointer increments when a data word is written into the</span></div><div class="line"><span class="comment">       FIFO by \ref Cy_I2S_WriteTxData. */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gaa4f7d70dc4aa9716864e12f8fc8d5791"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa4f7d70dc4aa9716864e12f8fc8d5791">&#9670;&nbsp;</a></span>Cy_I2S_FreezeTxFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_FreezeTxFifo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Freezes the TX FIFO. </p>
<p>This function is for debug purposes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to freeze the Tx FIFO for debugging purposes */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#gaa4f7d70dc4aa9716864e12f8fc8d5791">Cy_I2S_FreezeTxFifo</a>(I2S0);</div><div class="line">    <span class="comment">/* Now the read pointer of the Tx FIFO will be not affected by HW. */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga4ed92a2c26187bfa03b01d72ab8d06e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4ed92a2c26187bfa03b01d72ab8d06e6">&#9670;&nbsp;</a></span>Cy_I2S_UnfreezeTxFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_UnfreezeTxFifo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Unfreezes the TX FIFO. </p>
<p>This function is for debug purposes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: The Tx FIFO was previously frozen and now needs to be unfrozen */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga4ed92a2c26187bfa03b01d72ab8d06e6">Cy_I2S_UnfreezeTxFifo</a>(I2S0);</div><div class="line">    <span class="comment">/* Now the Tx FIFO works as usually. */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga11c903a4a6fb573bf85e83082f898352"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga11c903a4a6fb573bf85e83082f898352">&#9670;&nbsp;</a></span>Cy_I2S_ClearRxFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_ClearRxFifo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Clears the RX FIFO (resets the Read/Write FIFO pointers). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Empty the contents of the RX FIFO in preparation for a new data reception */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga11c903a4a6fb573bf85e83082f898352">Cy_I2S_ClearRxFifo</a>(I2S0);</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gaf8a9faca8ed9e59246b68551a6435b86"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf8a9faca8ed9e59246b68551a6435b86">&#9670;&nbsp;</a></span>Cy_I2S_GetNumInRxFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint32_t Cy_I2S_GetNumInRxFifo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the number of used words in the RX FIFO. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The current number of used words in rge RX FIFO.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Waiting for new received data, check how many data words are in the Rx FIFO  */</span></div><div class="line">    <span class="keywordflow">if</span> (2UL &lt; <a class="code" href="group__group__i2s__functions.html#gaf8a9faca8ed9e59246b68551a6435b86">Cy_I2S_GetNumInRxFifo</a>(I2S0))</div><div class="line">    {</div><div class="line">        <span class="comment">/* There are more than 2 data words in the RX FIFO, </span></div><div class="line"><span class="comment">           so get them using Cy_I2S_ReadRxData */</span></div><div class="line">    }</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gad7357e57531ff7c567528b085229b31d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad7357e57531ff7c567528b085229b31d">&#9670;&nbsp;</a></span>Cy_I2S_ReadRxData()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint32_t Cy_I2S_ReadRxData </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads data from the RX FIFO. </p>
<p>Decreases the RX FIFO level.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The read data.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to get two data words from the Rx FIFO */</span></div><div class="line">    uint32_t data[2];</div><div class="line">    data[0] = <a class="code" href="group__group__i2s__functions.html#gad7357e57531ff7c567528b085229b31d">Cy_I2S_ReadRxData</a>(I2S0); <span class="comment">/* The data[0] contains the first word from the Rx FIFO */</span></div><div class="line">    data[1] = <a class="code" href="group__group__i2s__functions.html#gad7357e57531ff7c567528b085229b31d">Cy_I2S_ReadRxData</a>(I2S0); <span class="comment">/* The data[1] contains the next word </span></div><div class="line"><span class="comment">                                            (which is actually the first now) from the Rx FIFO */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga90cd78ba3a198a9ab614bd6a4067795b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga90cd78ba3a198a9ab614bd6a4067795b">&#9670;&nbsp;</a></span>Cy_I2S_ReadRxDataSilent()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint32_t Cy_I2S_ReadRxDataSilent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads data from the RX FIFO without updating the RX FIFO read pointer. </p>
<p>This function is for debug purposes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The read data.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to get a data silently from the Rx FIFO (don&#39;t increment FIFO read pointer) */</span></div><div class="line">    uint32_t data[4];</div><div class="line">    data[0] = <a class="code" href="group__group__i2s__functions.html#ga90cd78ba3a198a9ab614bd6a4067795b">Cy_I2S_ReadRxDataSilent</a>(I2S0); <span class="comment">/* The data[0] contains the first word from the Rx FIFO */</span></div><div class="line">    data[1] = <a class="code" href="group__group__i2s__functions.html#ga90cd78ba3a198a9ab614bd6a4067795b">Cy_I2S_ReadRxDataSilent</a>(I2S0); <span class="comment">/* The data[1] contains the same first word from the Rx FIFO */</span></div><div class="line">    data[2] = <a class="code" href="group__group__i2s__functions.html#gad7357e57531ff7c567528b085229b31d">Cy_I2S_ReadRxData</a>(I2S0); <span class="comment">/* The data[2] contains the same first word from the Rx FIFO */</span></div><div class="line">    data[3] = <a class="code" href="group__group__i2s__functions.html#gad7357e57531ff7c567528b085229b31d">Cy_I2S_ReadRxData</a>(I2S0); <span class="comment">/* The data[3] contains the next (the first now) word from the Rx FIFO */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gafb8ef85cc35a11359a130da71bc28e5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafb8ef85cc35a11359a130da71bc28e5e">&#9670;&nbsp;</a></span>Cy_I2S_GetRxReadPointer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint8_t Cy_I2S_GetRxReadPointer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the RX FIFO Read pointer. </p>
<p>This function is for debug purposes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The current RX Read pointer value.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to check the Rx FIFO read pointer */</span></div><div class="line">    uint8_t readPointer = <a class="code" href="group__group__i2s__functions.html#gafb8ef85cc35a11359a130da71bc28e5e">Cy_I2S_GetRxReadPointer</a>(I2S0);</div><div class="line">    <span class="comment">/* readPointer now contains the read pointer of the Rx FIFO.</span></div><div class="line"><span class="comment">       The Rx FIFO read pointer increments when a data word is read from the</span></div><div class="line"><span class="comment">       FIFO by \ref Cy_I2S_ReadRxData. */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga4c941c1ab476ccc431227e42a3204b6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4c941c1ab476ccc431227e42a3204b6a">&#9670;&nbsp;</a></span>Cy_I2S_GetRxWritePointer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint8_t Cy_I2S_GetRxWritePointer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the RX FIFO Write pointer. </p>
<p>This function is for debug purposes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The current RX Write pointer value.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to check the Rx FIFO write pointer */</span></div><div class="line">    uint8_t writePointer = <a class="code" href="group__group__i2s__functions.html#ga4c941c1ab476ccc431227e42a3204b6a">Cy_I2S_GetRxWritePointer</a>(I2S0);</div><div class="line">    <span class="comment">/* writePointer now contains the write pointer of the Rx FIFO.</span></div><div class="line"><span class="comment">       The Rx FIFO write pointer increments when the I2S reception is running</span></div><div class="line"><span class="comment">       and HW drops a data word into the FIFO. */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga3de8271260cf4da4ec8f61b8a7895a9a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3de8271260cf4da4ec8f61b8a7895a9a">&#9670;&nbsp;</a></span>Cy_I2S_FreezeRxFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_FreezeRxFifo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Freezes the RX FIFO. </p>
<p>This function is for debug purposes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to freeze the Rx FIFO */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga3de8271260cf4da4ec8f61b8a7895a9a">Cy_I2S_FreezeRxFifo</a>(I2S0);</div><div class="line">    <span class="comment">/* Now the write pointer of the Rx FIFO will be not affected by HW. */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga91e5c2ab78e35e09d576f9adbcb0db40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga91e5c2ab78e35e09d576f9adbcb0db40">&#9670;&nbsp;</a></span>Cy_I2S_UnfreezeRxFifo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_UnfreezeRxFifo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Unfreezes the RX FIFO. </p>
<p>This function is for debug purposes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: The Rx FIFO was previously frozen and now needs to be unfrozen */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga91e5c2ab78e35e09d576f9adbcb0db40">Cy_I2S_UnfreezeRxFifo</a>(I2S0);</div><div class="line">    <span class="comment">/* Now the Rx FIFO works as usually. */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga69a9766065aa59819f46d1c3f1e78631"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga69a9766065aa59819f46d1c3f1e78631">&#9670;&nbsp;</a></span>Cy_I2S_GetInterruptStatus()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint32_t Cy_I2S_GetInterruptStatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets an interrupt status (returns a content of the INTR register). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The interrupt bit mask <a class="el" href="group__group__i2s__macros__interrupt__masks.html">Interrupt Masks</a>.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to check TX_EMPTY interrupt status regardless of whether it is enabled (masked) or not */</span></div><div class="line">    <span class="keywordflow">if</span> (0UL != (<a class="code" href="group__group__i2s__macros__interrupt__masks.html#gadc2be4eeee3e8b5a0d54bd6e881f5218">CY_I2S_INTR_TX_EMPTY</a> &amp; <a class="code" href="group__group__i2s__functions.html#ga69a9766065aa59819f46d1c3f1e78631">Cy_I2S_GetInterruptStatus</a> (I2S0)))</div><div class="line">    {</div><div class="line">        <span class="comment">/* The TX_EMPTY interrupt is pending */</span></div><div class="line">    }</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga7f7dde04f9940070daef8999eab4b5ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7f7dde04f9940070daef8999eab4b5ac">&#9670;&nbsp;</a></span>Cy_I2S_ClearInterrupt()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_ClearInterrupt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>interrupt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Clears one or more interrupt factors (sets the INTR register). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
    <tr><td class="paramname">interrupt</td><td>Interrupt bit mask <a class="el" href="group__group__i2s__macros__interrupt__masks.html">Interrupt Masks</a>.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Inside the I2S interrupt service routine */</span></div><div class="line"></div><div class="line">    <span class="comment">/* Get all the enabled pending interrupts */</span></div><div class="line">    uint32_t interrupt = <a class="code" href="group__group__i2s__functions.html#gaefc4f987f55f52a80a0d8fbd811b3c33">Cy_I2S_GetInterruptStatusMasked</a> (I2S0);</div><div class="line"></div><div class="line">    <span class="keywordflow">if</span> (0UL != (<a class="code" href="group__group__i2s__macros__interrupt__masks.html#gadc2be4eeee3e8b5a0d54bd6e881f5218">CY_I2S_INTR_TX_EMPTY</a> &amp; interrupt))</div><div class="line">    {</div><div class="line">        <span class="comment">/* Handle the TX_EMPTY interrupt - fill the Tx FIFO, etc. */</span></div><div class="line">    }</div><div class="line"></div><div class="line">    <span class="comment">/* Check and handle the rest of I2S interrupt types, if needed */</span></div><div class="line"></div><div class="line">    <span class="comment">/* Clear the interrupt */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga7f7dde04f9940070daef8999eab4b5ac">Cy_I2S_ClearInterrupt</a>(I2S0, interrupt);</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga361c7897d02c94d4a45063f57e9117ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga361c7897d02c94d4a45063f57e9117ea">&#9670;&nbsp;</a></span>Cy_I2S_SetInterrupt()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_SetInterrupt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>interrupt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets one or more interrupt factors (sets the INTR_SET register). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
    <tr><td class="paramname">interrupt</td><td>Interrupt bit mask <a class="el" href="group__group__i2s__macros__interrupt__masks.html">Interrupt Masks</a>.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Test the TX_EMPTY interrupt */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga361c7897d02c94d4a45063f57e9117ea">Cy_I2S_SetInterrupt</a>(I2S0, <a class="code" href="group__group__i2s__macros__interrupt__masks.html#gadc2be4eeee3e8b5a0d54bd6e881f5218">CY_I2S_INTR_TX_EMPTY</a>); <span class="comment">/* Set the TX_EMPTY by software */</span></div><div class="line">    <span class="comment">/* Now the TX_EMPTY interrupt should occur (if it is enabled, of course) */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga4322105dd958d9d42f7ead1399e0ab51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4322105dd958d9d42f7ead1399e0ab51">&#9670;&nbsp;</a></span>Cy_I2S_GetInterruptMask()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint32_t Cy_I2S_GetInterruptMask </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the interrupt mask (a content of the INTR_MASK register). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The interrupt bit mask <a class="el" href="group__group__i2s__macros__interrupt__masks.html">Interrupt Masks</a>.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Need to enable the TX_EMPTY interrupt apart from all other interrupts */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga3add2008780c377c10dd3231d97182de">Cy_I2S_SetInterruptMask</a> (I2S0, <a class="code" href="group__group__i2s__macros__interrupt__masks.html#gadc2be4eeee3e8b5a0d54bd6e881f5218">CY_I2S_INTR_TX_EMPTY</a> | <a class="code" href="group__group__i2s__functions.html#ga4322105dd958d9d42f7ead1399e0ab51">Cy_I2S_GetInterruptMask</a> (I2S0));</div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="ga3add2008780c377c10dd3231d97182de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3add2008780c377c10dd3231d97182de">&#9670;&nbsp;</a></span>Cy_I2S_SetInterruptMask()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE void Cy_I2S_SetInterruptMask </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>interrupt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets one or more interrupt factor masks (the INTR_MASK register). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
    <tr><td class="paramname">interrupt</td><td>Interrupt bit mask <a class="el" href="group__group__i2s__macros__interrupt__masks.html">Interrupt Masks</a>.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Enable I2S interrupts (if any used) */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga3add2008780c377c10dd3231d97182de">Cy_I2S_SetInterruptMask</a> (I2S0, <a class="code" href="group__group__i2s__macros__interrupt__masks.html#ga3bcfda6db2e4dd7bf3138542b4eea44f">CY_I2S_INTR_TX_TRIGGER</a>   |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#ga26ffe69252c2c4252bf0f2f8406e7f0b">CY_I2S_INTR_TX_NOT_FULL</a>  |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#gadc2be4eeee3e8b5a0d54bd6e881f5218">CY_I2S_INTR_TX_EMPTY</a>     |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#ga334a1ab0b685497edc4bf132400814a8">CY_I2S_INTR_TX_OVERFLOW</a>  |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#ga38b517292ead00d3848962fa7fca7eb5">CY_I2S_INTR_TX_UNDERFLOW</a> |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#ga8f368e82f9c84ba941019890f6483519">CY_I2S_INTR_TX_WD</a>        |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#ga4fa10b6befda1cb14e09a9114e2e5200">CY_I2S_INTR_RX_TRIGGER</a>   |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#gab58d434d0f9ef5bc1dce8c211cede677">CY_I2S_INTR_RX_NOT_EMPTY</a> |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#gaa3ab58981323c1646276eb0e53fc0e3f">CY_I2S_INTR_RX_FULL</a>      |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#ga688ee43b09fb7c608997eb8f510b4fe8">CY_I2S_INTR_RX_OVERFLOW</a>  |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#ga14e9d7cfaf29a9ab998e6bfc15971d45">CY_I2S_INTR_RX_UNDERFLOW</a> |</div><div class="line">                                  <a class="code" href="group__group__i2s__macros__interrupt__masks.html#ga0a1c19138ee16c467ccbe3fc36fc75ec">CY_I2S_INTR_RX_WD</a>); <span class="comment">/* Remove needless items */</span></div><div class="line"></div><div class="line">    <span class="comment">/* Scenario: Disable I2S interrupts (if any enabled) */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga3add2008780c377c10dd3231d97182de">Cy_I2S_SetInterruptMask</a> (I2S0, 0UL); <span class="comment">/* Disable all I2S interrupts */</span></div></div><!-- fragment --></dd></dl>

</div>
</div>
<a id="gaefc4f987f55f52a80a0d8fbd811b3c33"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaefc4f987f55f52a80a0d8fbd811b3c33">&#9670;&nbsp;</a></span>Cy_I2S_GetInterruptStatusMasked()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__STATIC_INLINE uint32_t Cy_I2S_GetInterruptStatusMasked </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_i2_s___type.html">I2S_Type</a> const *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the interrupt status masked (a content of the INTR_MASKED register). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>The pointer to the I2S instance address.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The interrupt bit mask(s) <a class="el" href="group__group__i2s__macros__interrupt__masks.html">Interrupt Masks</a>.</dd></dl>
<dl class="section user"><dt>Function Usage</dt><dd><div class="fragment"><div class="line">    <span class="comment">/* Scenario: Inside the I2S interrupt service routine */</span></div><div class="line"></div><div class="line">    <span class="comment">/* Get all the enabled pending interrupts */</span></div><div class="line">    uint32_t interrupt = <a class="code" href="group__group__i2s__functions.html#gaefc4f987f55f52a80a0d8fbd811b3c33">Cy_I2S_GetInterruptStatusMasked</a> (I2S0);</div><div class="line"></div><div class="line">    <span class="keywordflow">if</span> (0UL != (<a class="code" href="group__group__i2s__macros__interrupt__masks.html#gadc2be4eeee3e8b5a0d54bd6e881f5218">CY_I2S_INTR_TX_EMPTY</a> &amp; interrupt))</div><div class="line">    {</div><div class="line">        <span class="comment">/* Handle the TX_EMPTY interrupt - fill the Tx FIFO, etc. */</span></div><div class="line">    }</div><div class="line"></div><div class="line">    <span class="comment">/* Check and handle the rest of I2S interrupt types, if needed */</span></div><div class="line"></div><div class="line">    <span class="comment">/* Clear the interrupt */</span></div><div class="line">    <a class="code" href="group__group__i2s__functions.html#ga7f7dde04f9940070daef8999eab4b5ac">Cy_I2S_ClearInterrupt</a>(I2S0, interrupt);</div></div><!-- fragment --></dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part
<div id="nav-path" class="navpath">
    <ul>
        <li class="footer">
            Generated for <b>MTB CAT1 Peripheral driver library</b> by <b>Cypress Semiconductor Corporation</b>.
            All rights reserved.
        </li>
    </ul>
</div>
-->
</body>
</html>
